<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title></title>
    <script type="text/javascript"></script>
    <link href="/Public/Index/layui/css/layui.css" rel="stylesheet">
    <link href="/Public/Index/css/common.css" rel="stylesheet">
    <link href="/Public/Index/css/index.css" rel="stylesheet">
</head>

<body>
<div>
    <div class="top border dis-flex flex-x-start flex-y-center f-14 col-main f-b">
        订单车辆调度1
    </div>
    <div class="main">
        <div class="box border">
            <form class="layui-form" action="">
                <div class="layui-row">
                    <div class="layui-col-xs11">
                        <div class="layui-form-item" style="margin-bottom: 0px;margin-top:3px;">
                            <div class="layui-inline">
                                <label class="layui-form-label">客户</label>
                                <div class="layui-input-inline">
                                    <input type="text" name="sourcename" placeholder="输入客户名称" autocomplete="off"
                                           class="layui-input">
                                </div>
                            </div>
                            <div class="layui-inline">
                                <label class="layui-form-label">始发地</label>
                                <div class="layui-input-inline layui-input-wrap">
                                    <div class="layui-input-prefix">
                                        <i class="layui-icon layui-icon-flag"></i>
                                    </div>
                                    <input type="text" name="sourcestolocaddress" placeholder="输入出发区域"
                                           autocomplete="off" class="layui-input">
                                </div>
                            </div>
                            <div class="layui-inline">
                                <label class="layui-form-label">目的地</label>
                                <div class="layui-input-inline layui-input-wrap">
                                    <div class="layui-input-prefix">
                                        <i class="layui-icon layui-icon-flag"></i>
                                    </div>
                                    <input type="text" name="destaddress" placeholder="输入目的地地区域" autocomplete="off"
                                           class="layui-input">
                                </div>
                            </div>
                            <div class="layui-inline">
                                <label class="layui-form-label">接单日</label>
                                <div class="layui-input-inline layui-input-wrap">
                                    <div class="layui-input-prefix">
                                        <i class="layui-icon layui-icon-date"></i>
                                    </div>
                                    <input type="text" name="orderdate" id="date" value="<?= $nowdate ?>"
                                           lay-verify="date" placeholder="yyyy-MM-dd" autocomplete="off"
                                           class="layui-input">
                                </div>
                            </div>
                            <div class="layui-inline">
                                <label class="layui-form-label">订单号</label>
                                <div class="layui-input-inline layui-input-wrap">
                                    <div class="layui-input-prefix">
                                        <i class="layui-icon layui-icon-list"></i>
                                    </div>
                                    <input type="text" name="sourcenum1" value="" placeholder="输入订单号"
                                           class="layui-input" lay-affix="clear">
                                </div>
                            </div>
                            <div class="layui-inline">
                                <label class="layui-form-label">运单号</label>
                                <div class="layui-input-inline layui-input-wrap">
                                    <div class="layui-input-prefix">
                                        <i class="layui-icon layui-icon-list"></i>
                                    </div>
                                    <input type="text" name="sourcenum2" value="" placeholder="输入运单号"
                                           class="layui-input" lay-affix="clear">
                                </div>
                            </div>

                            <div class="layui-inline">
                                <label class="layui-form-label">状态</label>
                                <div class="layui-input-inline" style="width:550px;">
                                    <input type="checkbox" name="orderstate[]" value="待调度" title="待调度">
                                    <input type="checkbox" name="orderstate[]" value="已调度" title="已调度">
                                    <input type="checkbox" name="orderstate[]" value="已送达" title="已送达">
                                    <input type="checkbox" name="orderstate[]" value="已回单" title="已回单">
                                    <input type="checkbox" name="orderstate[]" value="待结算" title="待结算">
                                    <input type="checkbox" name="orderstate[]" value="已结算" title="已结算">
                                </div>
                            </div>

                        </div>
                    </div>
                    <div class="layui-col-xs1" style="padding-top:20px;">
                        <div class="layui-inline">
                            <div class="layui-input-inline">
                                <button class="layui-btn layui-bg-orange layui-btn-xs" lay-submit
                                        lay-filter="demo-table-search">搜索
                                </button>
                                <button type="reset" class="layui-btn layui-btn-primary layui-btn-xs">重置</button>
                            </div>
                        </div>
                    </div>
                </div>
            </form>
        </div>

        <div id="orderlistbox" class="box border m_top10 orderlist">
            <table class="layui-hide" id="orderlist" lay-filter="orderlist"></table>
        </div>
        <div class="box border m_top10">

            <!-- <div class="layui-row">
                <div class="layui-col-xs8">
                    <table class="layui-hide" id="cysclxz" lay-filter="cysclxz"></table>
                </div>
                <div class="layui-col-xs4">
                    <div class="grid-demo">6/12</div>
                </div>
            </div> -->

            <div class="layui-tab layui-tab-card">
                <ul class="layui-tab-title">
                    <li class="layui-this">货物明细</li>
                    <li>车辆紧急调度</li>
                    <li>承运单</li>
                </ul>
                <div class="layui-tab-content">
                    <div class="layui-tab-item layui-show tab_box">
                        <table class="layui-hide" id="hwmx" lay-filter="hwmx"></table>
                    </div>
                    <div class="layui-tab-item tab_box diaoduche">
                        <table class="layui-hide" id="diaoduche" lay-filter="diaoduche"></table>
                    </div>
                    <div class="layui-tab-item tab_box">
                        <div class="layui-row layui-col-space4">
                            <div class="layui-col-xs8">
                                <table class="layui-hide" id="cyscltable" lay-filter="cyscltable"></table>
                            </div>
                            <div class="layui-col-xs4">
                                <table class="layui-hide" id="price" lay-filter="price"></table>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>

        <div class="layui-btn-container dis-flex flex-x-end m_top10">
            <button class="layui-btn layui-bg-default layui-btn-xs guanlian">确认关联选中数据</button>
            <button class="layui-btn layui-bg-default layui-btn-xs guanliancyd">确认关联承运单</button>
        </div>
    </div>
</div>

<div id="Price_type_select" style="display: none;">
    <div style="padding:16px;">
        <div class="layui-form layui-row layui-col-space-">
            <div class="layui-col-md12">
                <select id="Feiyong_type">
                    <option value="">请选择</option>
                    <?php foreach ($feiyong as $fy): ?>
                        <option value="<?= $fy['cPAYITEM_NO'] ?>"><?= $fy['cPAYITEM_NM'] ?></option>;
                    <?php endforeach; ?>
                </select>
            </div>
        </div>
    </div>
    <!-- 订单分页栏模板 -->
    <script type="text/html" id="ID-table-demo-page-pagebar">
        <div class="layui-btn-container">
            <button class="layui-btn layui-btn-xs" lay-event="hebingdingdan" style="margin-right:-10px">合并订单</button>
        </div>
    </script>
    <script type="text/html" id="toolbarDemo">
        <div class="layui-btn-container">
            <!-- <button class="layui-btn layui-btn-xs" lay-event="getCheckData">获取选中行数据</button>
            <button class="layui-btn layui-btn-xs" lay-event="getData">获取当前页数据</button> -->
            <!-- <button class="layui-btn layui-btn-xs" id="dropdownButton">
              下拉按钮
              <i class="layui-icon layui-icon-down layui-font-12"></i>
            </button> -->
            <div class="layui-btn layui-btn-primary layui-border layui-btn-xs no_border f-14 col-main f-b">待调度订单</div>
            <!-- <button class="layui-btn layui-btn-xs layui-bg-blue" id="reloadTest">
              重载数据
              <i class="layui-icon layui-icon-down layui-font-12"></i>
            </button> -->
            <button class="layui-btn layui-btn-xs layui-btn-primary" id="rowMode">
                <span>{{= d.lineStyle ? '多行' : '单行' }}模式</span>
                <i class="layui-icon layui-icon-down layui-font-12"></i>
            </button>
        </div>
    </script>
    <script type="text/html" id="toolbarDemo2">
        <div class="layui-btn-container">
            <!-- <button class="layui-btn layui-btn-xs" lay-event="getCheckData">获取选中行数据</button>
            <button class="layui-btn layui-btn-xs" lay-event="getData">获取当前页数据</button> -->
            <!-- <button class="layui-btn layui-btn-xs" id="dropdownButton">
              下拉按钮
              <i class="layui-icon layui-icon-down layui-font-12"></i>
            </button> -->
            <!-- <div class="layui-btn layui-btn-primary layui-border layui-btn-xs no_border f-14 col-main f-b">待调度车辆</div> -->
            <!-- <button class="layui-btn layui-btn-xs layui-bg-blue" id="reloadTest">
              重载数据
              <i class="layui-icon layui-icon-down layui-font-12"></i>
            </button> -->
            <button class="layui-btn layui-btn-xs layui-btn-primary" id="rowMode">
                <span>{{= d.lineStyle ? '多行' : '单行' }}模式</span>
                <i class="layui-icon layui-icon-down layui-font-12"></i>
            </button>
        </div>
    </script>
    <script type="text/html" id="toolbar_hwmx">
        <div class="layui-btn-container">
            <!-- <button class="layui-btn layui-btn-xs" lay-event="getCheckData">获取选中行数据</button>
            <button class="layui-btn layui-btn-xs" lay-event="getData">获取当前页数据</button> -->
            <!-- <button class="layui-btn layui-btn-xs" id="dropdownButton">
              下拉按钮
              <i class="layui-icon layui-icon-down layui-font-12"></i>
            </button> -->
            <!-- <div class="layui-btn layui-btn-primary layui-border layui-btn-xs no_border f-14 col-main f-b">货物明细</div> -->
            <!-- <button class="layui-btn layui-btn-xs layui-bg-blue" id="reloadTest">
              重载数据
              <i class="layui-icon layui-icon-down layui-font-12"></i>
            </button> -->
            <button class="layui-btn layui-btn-xs layui-btn-primary" id="rowMode">
                <span>{{= d.lineStyle ? '多行' : '单行' }}模式</span>
                <i class="layui-icon layui-icon-down layui-font-12"></i>
            </button>
        </div>
    </script>
    <script type="text/html" id="barDemo">
        <div class="layui-clear-space">
            <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
            <a class="layui-btn layui-btn-xs" lay-event="more">
                更多
                <i class="layui-icon layui-icon-down"></i>
            </a>
        </div>
    </script>

    <!-- 字段处理 ---------------------------------------------------------------------------------->
    <!-- 普通字段 -->
    <script type="text/html" id="TPL-text">
        {{#  if(d.idx == ''){ }}
        <input data-field="{{= d.LAY_COL.field || '' }}" class="layui-input text-demo" placeholder="请输入{{= d.title}}"
               value="">
        {{#  }else{ }}
        {{= d[d.LAY_COL.field] }}
        {{#  } }}
    </script>
    <script type="text/html" id="TPL-text-value">
        {{#  console.log(d) }}
        {{#  if(d.idx == ''){ }}
        <input data-field="{{= d.LAY_COL.field || '' }}" class="layui-input text-demo" placeholder="请输入{{= d.title}}"
               value="{{= d[d.LAY_COL.field] }}">
        {{#  }else{ }}
        {{= d[d.LAY_COL.field] }}
        {{#  } }}
    </script>
    <script type="text/html" id="TPL-text-only">
        {{#  if(d.idx == ''){ }}
        <input data-field="{{= d.LAY_COL.field || '' }}" class="layui-input text-demo" placeholder="请输入{{= d.title}}"
               value="">
        {{#  }else{ }}
        {{= d[d.LAY_COL.field] }}
        {{#  } }}
    </script>
    <!-- laydate -->
    <script type="text/html" id="TPL-laydate-demo">
        {{#  if(d.idx == ''){ }}
        <input data-field="{{= d.LAY_COL.field || '' }}" class="layui-input laydate-demo" placeholder="选择日期" value="">
        {{#  }else{ }}
        {{= d[d.LAY_COL.field] }}
        {{#  } }}
    </script>
    <!-- 原生 select 模板（推荐） -->
    <script type="text/html" id="TPL-select-primary">
        {{#  if(d.idx == ''){ }}
        <select data-field="{{= d.LAY_COL.field || '' }}" class="layui-border select-primary" lay-ignore>
            <option value="">请选择</option>
        </select>
        {{#  }else{ }}
        {{= d[d.LAY_COL.field] }}
        {{#  } }}
    </script>
    <!-- 新增数据保存前删除 -->
    <script type="text/html" id="befor_save_del_Demo">
        <div class="layui-clear-space">
            {{# if(d.idx == ''){ }}
            <a class="layui-btn layui-bg-red layui-btn-xs" lay-event="newdel">删除</a>
            {{# } }}
        </div>
    </script>
    <!-- 字段处理 ---------------------------------------------------------------------------------->


    <script src="/Public/Index/layui/layui.js"></script>
    <script>


        layui.use(['form', 'laydate', 'table', 'dropdown'], function () {
            var table = layui.table;
            var dropdown = layui.dropdown;
            var form = layui.form;
            var layer = layui.layer;
            var laydate = layui.laydate;

            var $ = layui.jquery;

            //日期设置
            laydate.render({
                elem: '#date'
            });

            //搜索表单提交
            form.on('submit(demo-table-search)', function (data) {

                var field = data.field; // 获得表单字段

                var pdata = {};

                if (field.kehu != '') {
                    pdata.kehu = field.kehu;
                }
                if (field.endadd != '') {
                    pdata.endadd = field.endadd;
                }
                if (field.orderdate != '') {
                    pdata.orderdate = field.orderdate;
                }
                if (field.status != '') {
                    pdata.status = field.status;
                }

                console.log(pdata);

                // 执行搜索重载
                table.reload('orderlist', {
                    page: {
                        curr: 1 // 重新从第 1 页开始
                    },
                    where: field // 搜索的字段
                });


                return false; // 阻止默认 form 跳转
            });

            // 创建渲染实例
            table.render({
                elem: '#orderlist',
                url: '/index.php?s=/store/wlyunshu.api/getorderlist', // 此处为静态模拟数据，实际使用时需换成真实接口
                toolbar: '#toolbarDemo',
                defaultToolbar: ['filter', 'exports', 'print', {
                    title: '全屏',
                    layEvent: 'full_screen',
                    icon: 'layui-icon-screen-full'
                }],
                pagebar: '#ID-table-demo-page-pagebar', // 分页栏模板
                height: '350', // full-35最大高度减去其他容器已占有的高度差
                css: [ // 重设当前表格样式
                    '.layui-table-tool-temp{padding-right: 145px;}'
                ].join(''),
                cellMinWidth: 60,
                loading: true,
                totalRow: false, // 开启合计行
                page: true,
                limit: 50,
                even: true, //跨行背景
                parseData: function (res) { // res 即为原始返回的数据
                    console.log(res);

                    if (res.data.list) {
                        return {
                            "code": res.code, // 解析接口状态
                            "msg": res.msg, // 解析提示文本
                            "count": res.data.list.page.total, // 解析数据长度
                            "data": res.data.list.data // 解析数据列表
                        };
                    } else {
                        return {
                            "code": res.code, // 解析接口状态
                            "msg": '暂无无数据', // 解析提示文本
                            "count": 0, // 解析数据长度
                            "data": [] // 解析数据列表
                        };
                    }
                },
                cols: [
                    [
                        {type: 'checkbox', fixed: 'left'},
                        {field: 'idx', fixed: 'left', width: 50, title: 'ID', sort: false},
                        {field: 'orderstate', fixed: 'left', width: 80, title: '状态', sort: false},

                        {field: 'sourcenum1', fixed: 'left', width: 150, title: '订单编号', sort: false},
                        {field: 'sourcenum2', fixed: 'left', width: 150, title: '发运单号', sort: false},

                        {field: 'orderdate', width: 120, title: '接单日期', sort: false},
                        {field: 'orderdate1', width: 120, title: '下单日期', sort: false},

                        {field: 'orderweigh', width: 100, title: '订单重量', sort: false},
                        {field: 'orderVolume', width: 100, title: '订单体积', sort: false},

                        {field: 'sourcestolocaddressid', width: 150, title: '客户编号', sort: false},
                        {field: 'destname', width: 200, title: '客户名称', sort: false},

                        // { field: 'sourcenum3',  width: 100, title: '仓库客户端编号3', sort: false},
                        // { field: 'sourcekindid',  width: 100, title: '仓库类型编号', sort: false},

                        {field: 'sourcekind', width: 100, title: '仓库类型', sort: false},
                        {field: 'sourceprovince', width: 100, title: '仓库省', sort: false},
                        {field: 'sourcecity', width: 100, title: '仓库市', sort: false},

                        // { field: 'sourcestolocid',  width: 100, title: '仓库地点编号', sort: false},
                        // { field: 'sourcestoloc',  width: 100, title: '仓库库存地点', sort: false},
                        {field: 'sourcestolocaddressid', width: 100, title: '仓库库存地址编号', sort: false},
                        {field: 'sourcestolocaddress', width: 260, title: '仓库库存地址', sort: false},

                        // { field: 'destid',  width: 100, title: '目的地编号', sort: false},
                        {field: 'destname', width: 200, title: '目的地名称', sort: false},
                        // { field: 'destnum1',  width: 100, title: '目的地客户端编号1', sort: false},
                        // { field: 'destnum2',  width: 100, title: '目的地客户端编号2', sort: false},
                        // { field: 'destnum3',  width: 100, title: '目的地客户端编号3', sort: false},

                        {field: 'destprovince', width: 100, title: '目的地地省', sort: false},
                        {field: 'destpcity', width: 100, title: '目的地市', sort: false},
                        // { field: 'destpcounty',  width: 100, title: '目的地区', sort: false},
                        // { field: 'destparea',  width: 100, title: '目的地区域', sort: false},
                        {field: 'destaddress', width: 100, title: '目的地地址', sort: false},

                        {field: 'destman1', width: 100, title: '目的地联络人', sort: false},
                        // { field: 'destman2',  width: 100, title: '目的地联络人2', sort: false},
                        // { field: 'destman3',  width: 100, title: '目的地联络人3', sort: false},

                        {field: 'destphone1', width: 150, title: '目的地联络电话', sort: false},
                        // { field: 'destphone2',  width: 100, title: '目的地联络电话2', sort: false},
                        // { field: 'destphone3',  width: 100, title: '目的地联络电话3', sort: false},

                        {field: 'orderdate2', width: 170, title: '参考日期', sort: false},
                        {field: 'orderdate3', width: 170, title: '发运日期', sort: false},
                        // { field: 'orderdate4',  width: 170, title: '日期', sort: false},


                        {field: 'ordernote', width: 200, title: '订单备注', sort: false},


                    ]
                ],
                done: function (res, curr, count, origin) {

                    //设置分组单元格样式
                    res.data.forEach(function (item, index) {
                        if (item.groupid !== null && item.orderstate != '组合单') {
                            var tr = $(".orderlist .layui-table tr[data-index=" + index + "]");
                            if (item.orderstate == '待调度') {
                                tr.addClass("layui-table-group");
                            } else {
                                tr.addClass("layui-table-group-hasdd");
                            }
                        }
                        if (item.groupid !== null && item.orderstate == '组合单') {
                            // $(".orderlist .layui-table tr[data-index="+index+"]").find('td:first').html('');
                            $(".orderlist .layui-table tr[data-index=" + index + "] input[type='checkbox']").attr('disabled', 'disabled');
                            ;
                            $(".orderlist .layui-table tr[data-index=" + index + "] .layui-form-checkbox").addClass("layui-checkbox-disabled layui-disabled");
                        }
                    })

                    var id = this.id;
                    // 下拉按钮测试
                    dropdown.render({
                        elem: '#dropdownButton', // 可绑定在任意元素中，此处以上述按钮为例
                        data: [{
                            id: 'add',
                            title: '添加'
                        }, {
                            id: 'update',
                            title: '编辑'
                        }, {
                            id: 'delete',
                            title: '删除'
                        }],
                        // 菜单被点击的事件
                        click: function (obj) {
                            var checkStatus = table.checkStatus(id)
                            var data = checkStatus.data; // 获取选中的数据
                            switch (obj.id) {
                                case 'add':
                                    layer.open({
                                        title: '添加',
                                        type: 1,
                                        area: ['80%', '80%'],
                                        content: '<div style="padding: 16px;">自定义表单元素</div>'
                                    });
                                    break;
                                case 'update':
                                    if (data.length !== 1) return layer.msg('请选择一行');
                                    layer.open({
                                        title: '编辑',
                                        type: 1,
                                        area: ['80%', '80%'],
                                        content: '<div style="padding: 16px;">自定义表单元素</div>'
                                    });
                                    break;
                                case 'delete':
                                    if (data.length === 0) {
                                        return layer.msg('请选择一行');
                                    }
                                    layer.msg('delete event');
                                    break;
                            }
                        }
                    });


                    // 行模式
                    dropdown.render({
                        elem: '#rowMode',
                        data: [{
                            id: 'default-row',
                            title: '单行模式（默认）'
                        }, {
                            id: 'multi-row',
                            title: '多行模式'
                        }],
                        // 菜单被点击的事件
                        click: function (obj) {
                            var checkStatus = table.checkStatus(id)
                            var data = checkStatus.data; // 获取选中的数据
                            switch (obj.id) {
                                case 'default-row':
                                    table.reload('orderlist', {
                                        lineStyle: null // 恢复单行
                                    });
                                    layer.msg('已设为单行');
                                    break;
                                case 'multi-row':
                                    table.reload('orderlist', {
                                        // 设置行样式，此处以设置多行高度为例。若为单行，则没必要设置改参数 - 注：v2.7.0 新增
                                        lineStyle: 'height: 95px;'
                                    });
                                    layer.msg('已设为多行');
                                    break;
                            }
                        }
                    });
                },
                error: function (res, msg) {
                    console.log(res, msg)
                }
            });

            // 工具栏事件
            table.on('toolbar(orderlist)', function (obj) {
                var id = obj.config.id;
                var checkStatus = table.checkStatus(id);
                var othis = lay(this);
                switch (obj.event) {
                    case 'getCheckData':
                        var data = checkStatus.data;
                        layer.alert(layui.util.escape(JSON.stringify(data)));
                        break;
                    case 'getData':
                        var getData = table.getData(id);
                        console.log(getData);
                        layer.alert(layui.util.escape(JSON.stringify(getData)));
                        break;
                    case 'full_screen':

                        var height = $('body').height();

                        if (!$('.orderlist').hasClass('full_screen')) {
                            $('.orderlist').addClass('full_screen');
                            /*table.reload('orderlist', {
                                height: '#orderlistbox-20', // full-35最大高度减去其他容器已占有的高度差
                            });*/
                            $('#orderlistbox .layui-icon-screen-full').removeClass('layui-icon-screen-full').addClass('layui-icon-screen-restore');
                            $('#orderlistbox .layui-table-body').css('height', (height - 180) + 'px');
                        } else {
                            $('.orderlist').removeClass('full_screen');
                            /*table.reload('orderlist', {
                                height: '#orderlistbox-1', // full-35最大高度减去其他容器已占有的高度差
                            });*/
                            $('#orderlistbox .layui-table-body').css('height', '217px');
                        }


                        //$('#orderlistbox .layui-icon-screen-full').parent().hide();
                        //$('#orderlistbox .layui-icon-screen-restore').parent().show();
                        break;


                }
                ;
            });

            // 底部分页栏事件
            table.on('pagebar(orderlist)', function (obj) {
                var eventValue = obj.event; // 获得按钮 lay-event 值
                var id = obj.config.id;
                var checkStatus = table.checkStatus(id)
                var data = checkStatus.data; // 获取选中的数据

                if (eventValue === 'hebingdingdan') {

                    var order_idxs = [];

                    if (data.length > 0) {

                        var cango = 1;
                        data.forEach(function (item) {
                            if (item.groupid !== null) {
                                cango = 0;
                            }
                            order_idxs.push(item.idx);
                        });

                        if (!cango) {
                            layer.alert("包含已合并过的订单,无法重复合并!", {
                                title: '提示'
                            });
                            return false;
                        }

                        var idxs = order_idxs.join(',');


                        $.get("/index.php?s=/store/wlyunshu.api/orderset", {idxs: idxs}, function (resalt) {
                            if (resalt.code == 0) {
                                table.reloadData('orderlist');
                                layer.msg('合并完成', {icon: 1});
                            } else {
                                layer.msg('合并失败', {icon: 2});
                            }
                        });


                    } else {
                        layer.alert("没有选中要合并订单!", {
                            title: '提示'
                        });
                    }


                    /*table_huowumingxi.reloadData('hwmx',{
                        data:huowus
                    });*/

                }

                //layer.msg(eventValue);
            });

            // 表头自定义元素工具事件 --- 2.8.8+
            table.on('colTool(orderlist)', function (obj) {
                var event = obj.event;
                console.log(obj);
                if (event === 'email-tips') {
                    layer.alert(layui.util.escape(JSON.stringify(obj.col)), {
                        title: '当前列属性配置项'
                    });
                }
            });

            // 复选框事件
            table.on('checkbox(orderlist)', function (obj) {

                console.log(obj); // 查看对象所有成员
                console.log(obj.checked); // 当前是否选中状态
                console.log(obj.data); // 选中行的相关数据
                console.log(obj.type); // 若触发的是全选，则为：all；若触发的是单选，则为：one

                var id = obj.config.id;

                console.log(id, 'idid');

                if (!obj.checked) {
                    if (Object.keys(obj.data).includes('groupid') && obj.data.groupid !== null) {
                        var all_data = table.getData(id);
                        all_data.forEach(function (item, index) {
                            if (Object.keys(item).includes('groupid') && item.groupid == obj.data.groupid) {
                                table.setRowChecked('orderlist', {
                                    index: index, // 所有行
                                    checked: false
                                });
                            }
                        })
                    }
                    setHwmx();
                    return false;
                }

                var checkStatus = table.checkStatus(id)
                var selected_data = checkStatus.data; // 获取选中的数据

                if (selected_data.length > 0) {

                    //如果选中的是分组数据
                    if (obj.data.groupid !== null) {

                        table.setRowChecked('orderlist', {
                            index: 'all', // 所有行
                            checked: false
                        });

                        var all_data = table.getData(id);
                        all_data.forEach(function (item, index) {
                            if (Object.keys(item).includes('groupid') && item.groupid !== null && obj.data.groupid == item.groupid) {
                                table.setRowChecked('orderlist', {
                                    index: index, // 所有行
                                    checked: true
                                });
                            }
                        })

                        if (obj.data.orderstate == '已调度') {
                            search_che({
                                groupid: obj.data.groupid
                            })
                            search_cyd_about({
                                groupid: obj.data.groupid
                            })
                        } else {
                            search_che({status: '待调度'});
                            search_cyd_about_clear();
                        }

                    } else {
                        console.log(selected_data, 3433);
                        let has_group_select = false;
                        selected_data.forEach(function (item, index) {
                            if (Object.keys(item).includes('groupid') && item.groupid !== null) {
                                has_group_select = true;
                            }
                        })

                        if (has_group_select) {
                            var all_data = table.getData(id);
                            all_data.forEach(function (item, index) {
                                if (Object.keys(item).includes('groupid') && item.groupid !== null) {
                                    table.setRowChecked('orderlist', {
                                        index: index, // 所有行
                                        checked: false
                                    });
                                }
                            })
                        }
                        search_che({status: '待调度'});
                        search_cyd_about_clear();
                    }
                }

                setHwmx();

            });

            // 行单击事件
            table.on('row(orderlist)', function (obj) {
                //console.log(obj);
                //layer.closeAll('tips');
            });
            // 行双击事件
            table.on('rowDouble(orderlist)', function (obj) {
                console.log(obj);
            });

            // 单元格编辑事件
            table.on('edit(orderlist)', function (obj) {
                var field = obj.field; // 得到字段
                var value = obj.value; // 得到修改后的值
                var data = obj.data; // 得到所在行所有键值
                // 值的校验
                if (field === 'email') {
                    if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(obj.value)) {
                        layer.tips('输入的邮箱格式不正确，请重新编辑', this, {tips: 1});
                        return obj.reedit(); // 重新编辑 -- v2.8.0 新增
                    }
                }
                // 编辑后续操作，如提交更新请求，以完成真实的数据更新
                // …
                layer.msg('编辑成功', {icon: 1});

                // 其他更新操作
                var update = {};
                update[field] = value;
                obj.update(update);
            });

            //关联订单和车辆
            $('.guanlian').on('click', function () {

                // 获取选中的订单数据
                var orderlistcheckStatus = table.checkStatus('orderlist');
                var orderlistdata = orderlistcheckStatus.data;

                var chelaingcheckStatus = table2.checkStatus('diaoduche');
                var cheliangdata = chelaingcheckStatus.data;

                if (orderlistdata.length == 0) {
                    layer.alert("没有选中订单!", {
                        title: '提示'
                    });
                    return false;
                }
                if (orderlistdata[0].orderstate != '待调度') {
                    layer.alert("订单不合法!", {
                        title: '提示'
                    });
                    return false;
                }
                if (cheliangdata.length == 0) {
                    layer.alert("没有选中车辆!", {
                        title: '提示'
                    });
                    return false;
                }
                if (cheliangdata.length == 0) {
                    layer.alert("没有选中车辆!", {
                        title: '提示'
                    });
                    return false;
                }

                var groupid = 0;
                if (orderlistdata[0].groupid === null) {
                    groupid = orderlistdata[0].idx;
                } else {
                    groupid = orderlistdata[0].groupid;
                }

                //订单id组
                var order_idxs = [];
                orderlistdata.forEach(function (item) {
                    order_idxs.push(item.idx);
                });
                var idxs = order_idxs.join(',');

                //车辆组
                var che_ids = [];
                cheliangdata.forEach(function (item) {
                    che_ids.push(item.idx);
                });
                var cheids = che_ids.join(',');

                // console.log({
                //     idxs:idxs,
                //     cheids:cheids,
                //     groupid:groupid,
                // });
                // return false;

                $.get("/index.php?s=/store/wlyunshu.api/order_bind", {
                    idxs: idxs,
                    cheids: cheids,
                    groupid: groupid,
                }, function (resalt) {
                    if (resalt.code == 0) {
                        table.reloadData('orderlist');
                        table2.reloadData('diaoduche');
                        layer.msg('关联完成', {icon: 1});
                        search_che({status: '待调度'});
                    } else {
                        layer.msg('关联失败', {icon: 2});
                    }
                });
            })


            //检索车辆
            function search_che(field) {
                // 执行搜索重载
                table.reload('diaoduche', {
                    page: {
                        curr: 1 // 重新从第 1 页开始
                    },
                    where: field // 搜索的字段
                });
            }

            function search_cyd_about(field) {
                // 执行搜索重载
                table_price.reload('price', {
                    page: {
                        curr: 1 // 重新从第 1 页开始
                    },
                    where: field // 搜索的字段
                });
                cyscltable.reload('cyscltable', {
                    page: {
                        curr: 1 // 重新从第 1 页开始
                    },
                    where: field // 搜索的字段
                });
            }

            function search_cyd_about_clear() {
                // 执行搜索重载
                table_price.reload('price', {
                    page: {
                        curr: 1 // 重新从第 1 页开始
                    },
                    where: [] // 搜索的字段
                });
                cyscltable.reload('cyscltable', {
                    page: {
                        curr: 1 // 重新从第 1 页开始
                    },
                    where: [] // 搜索的字段
                });
            }


            function setHwmx() {

                var huowus = [];

                var checkStatus = table.checkStatus('orderlist')
                var selected_data = checkStatus.data; // 获取选中的数据

                selected_data.forEach(function (item, index) {
                    if (Object.keys(item).includes('detail')) {
                        huowus = huowus.concat(item.detail);
                    }
                })
                table_huowumingxi.reloadData('hwmx', {
                    data: huowus
                });

            }


            //货物明细表格--------------------------------------------------------------->
            var table_huowumingxi = layui.table;
            var dropdown = layui.dropdown;

            // 创建渲染实例
            table_huowumingxi.render({
                elem: '#hwmx',
                toolbar: '#toolbarDemo2',
                defaultToolbar: ['filter', 'exports', 'print'],
                height: '260', // full-35最大高度减去其他容器已占有的高度差
                css: [ // 重设当前表格样式
                    '.layui-table-tool-temp{padding-right: 145px;}'
                ].join(''),
                data: [],
                cellMinWidth: 80,
                even: true,
                cols: [
                    [
                        {type: 'checkbox', fixed: 'left'},
                        {field: 'idx', fixed: 'left', width: 50, title: 'ID', sort: true},
                        {field: 'sourceid', title: '仓库编号', width: 100},
                        {field: 'sourcename', title: '仓库名称', width: 100},

                        {field: 'sourcenum1', title: '客户订单号', width: 160},
                        {field: 'sourcenum3', title: '运单编码', width: 160},
                        {field: 'sourcenum2', title: '货物编码', width: 160},
                        {field: 'sourcenum4', title: '批次', width: 80},
                        {field: 'sourcenum5', title: '客户货号', width: 100},

                        {field: 'sourcekindid', title: '仓库类型编号', width: 150},
                        {field: 'sourcekind', title: '发货类别', width: 100},

                        {field: 'quantity', title: '数量', width: 100},
                        {field: 'unit', title: '商品单位', width: 100},
                        {field: 'grossweight', title: '净重', width: 100,},
                        {field: 'volume', title: '体积', width: 100},

                        {field: 'Barcode', title: '条码', width: 220},
                    ]
                ],

            });


            //车辆紧急调度--------------------------------------------------------------->
            var table2 = layui.table;
            var dropdown = layui.dropdown;

            // 创建渲染实例
            table2.render({
                elem: '#diaoduche',
                url: '/index.php?s=/store/wlyunshu.api/getdiaoduche', // 此处为静态模拟数据，实际使用时需换成真实接口
                toolbar: '#toolbarDemo2',
                defaultToolbar: ['filter', 'exports', 'print'],
                height: '260', // full-35最大高度减去其他容器已占有的高度差
                css: [ // 重设当前表格样式
                    '.layui-table-tool-temp{padding-right: 145px;}'
                ].join(''),
                cellMinWidth: 80,
                where: {status: '待调度'},
                page: false,
                even: true,
                parseData: function (res) { // res 即为原始返回的数据
                    console.log(res);
                    return {
                        "code": res.code, // 解析接口状态
                        "msg": res.msg, // 解析提示文本
                        "count": res.data.list.total, // 解析数据长度
                        "data": res.data.list.data // 解析数据列表
                    };
                },
                cols: [
                    [
                        {type: 'checkbox', fixed: 'left'},
                        {field: 'idx', width: 50, title: 'ID', sort: false},

                        {field: 'groupid', title: '分组id', width: 120, sort: false},

                        {field: 'orderstate', title: '状态', width: 120, sort: false},

                        {field: 'cCAYUING_NO', title: '调度编码', width: 120, sort: false},
                        {field: 'cEMP_NM', title: '叫车人员', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cEMPMOBIL_TEL', title: '叫车手机', width: 120, sort: false, templet: '#TPL-text-demo'},

                        {field: 'cCAYING_NO', title: '调车单号', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'nMAT_QTY', title: '件数', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cUNIT_NM', title: '单位', width: 120, sort: false, templet: '#TPL-text-demo'},

                        {field: 'nMAIN_AMT', title: '运费总额', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'nOTH_AMT', title: '金额', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'nCAY_AMT', title: '运费金额', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'nOUG_AMT', title: '金额', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'nPAY_AMT', title: '已付金额', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'nPRE_AMT', title: '计划预付', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'nBAL_AMT', title: '结算金额', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cBAL_TAG', title: '结算别', width: 120, sort: false, templet: '#TPL-text-demo'},

                        {field: 'cFIN_MON', title: '帐款年月', width: 120, sort: false, templet: '#TPL-laydate-demo'},

                        {field: 'cSUPPLIER_NM', title: '承运商分类', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cSUPPLIER_SNM', title: '承运单位/个体', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cSUPLTEL_NO', title: '承运电话', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cSUPMOBIL_TEL', title: '承运手机', width: 120, sort: false, templet: '#TPL-text-demo'},

                        {field: 'cPURODR_NO', title: '协议单号', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cCAYING_DATE', title: '发货日期', width: 120, sort: false, templet: '#TPL-laydate-demo'},
                        {field: 'tREQARR_DT', title: '预计到货时间', width: 120, sort: false, templet: '#TPL-laydate-demo'},

                        {field: 'cVEHPLATE_NO', title: '车牌号码', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cVEHMAN_NM', title: '司机', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cMOBIL_TEL', title: '司机手机', width: 120, sort: false, templet: '#TPL-text-demo'},

                        {field: 'cLADING_ADDR', title: '起始地', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cEDAPANA_NM', title: '到达地', width: 120, sort: false, templet: '#TPL-text-demo'},

                        {field: 'cREMARK', title: '备注', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cVEHKIND_NM', title: '车辆类型', width: 120, sort: false, templet: '#TPL-text-demo'},
                        {field: 'cVEHSIZE_NM', title: '车辆尺寸', width: 120, sort: false, templet: '#TPL-text-demo'},

                        {field: '预计到货时间', title: '预计到货时间', width: 120, sort: false},

                    ]
                ],
                done: function (res, curr, count, origin) {
                    var id = this.id;


                    //设置分组单元格样式
                    res.data.forEach(function (item, index) {
                        if (item.orderstate != '待调度') {
                            $(".diaoduche .layui-table tr[data-index=" + index + "] input[type='checkbox']").attr('disabled', 'disabled');
                            ;
                            $(".diaoduche .layui-table tr[data-index=" + index + "] .layui-form-checkbox").addClass("layui-checkbox-disabled layui-disabled");
                        }
                    })

                    //添加这个禁用样式

                    // 下拉按钮测试
                    dropdown.render({
                        elem: '#dropdownButton', // 可绑定在任意元素中，此处以上述按钮为例
                        data: [{
                            id: 'add',
                            title: '添加'
                        }, {
                            id: 'update',
                            title: '编辑'
                        }, {
                            id: 'delete',
                            title: '删除'
                        }],
                        // 菜单被点击的事件
                        click: function (obj) {
                            var checkStatus = table.checkStatus(id)
                            var data = checkStatus.data; // 获取选中的数据
                            switch (obj.id) {
                                case 'add':
                                    layer.open({
                                        title: '添加',
                                        type: 1,
                                        area: ['80%', '80%'],
                                        content: '<div style="padding: 16px;">自定义表单元素</div>'
                                    });
                                    break;
                                case 'update':
                                    if (data.length !== 1) return layer.msg('请选择一行');
                                    layer.open({
                                        title: '编辑',
                                        type: 1,
                                        area: ['80%', '80%'],
                                        content: '<div style="padding: 16px;">自定义表单元素</div>'
                                    });
                                    break;
                                case 'delete':
                                    if (data.length === 0) {
                                        return layer.msg('请选择一行');
                                    }
                                    layer.msg('delete event');
                                    break;
                            }
                        }
                    });

                    // 行模式
                    dropdown.render({
                        elem: '#rowMode',
                        data: [{
                            id: 'default-row',
                            title: '单行模式（默认）'
                        }, {
                            id: 'multi-row',
                            title: '多行模式'
                        }],
                        // 菜单被点击的事件
                        click: function (obj) {
                            var checkStatus = table.checkStatus(id)
                            var data = checkStatus.data; // 获取选中的数据
                            switch (obj.id) {
                                case 'default-row':
                                    table.reload('diaoduche', {
                                        lineStyle: null // 恢复单行
                                    });
                                    layer.msg('已设为单行');
                                    break;
                                case 'multi-row':
                                    table.reload('diaoduche', {
                                        // 设置行样式，此处以设置多行高度为例。若为单行，则没必要设置改参数 - 注：v2.7.0 新增
                                        lineStyle: 'height: 95px;'
                                    });
                                    layer.msg('即通过设置 lineStyle 参数可开启多行');
                                    break;
                            }
                        }
                    });
                },
                error: function (res, msg) {
                    console.log(res, msg)
                }
            });

            // 工具栏事件
            table2.on('toolbar(diaoduche)', function (obj) {
                var id = obj.config.id;
                var checkStatus = table.checkStatus(id);
                var othis = lay(this);
                switch (obj.event) {
                    case 'getCheckData':
                        var data = checkStatus.data;
                        layer.alert(layui.util.escape(JSON.stringify(data)));
                        break;
                    case 'getData':
                        var getData = table.getData(id);
                        console.log(getData);
                        layer.alert(layui.util.escape(JSON.stringify(getData)));
                        break;
                        /*case 'addcyscl':
                          layer.open({
                               type: 1,
                               shade: false, // 不显示遮罩
                               content: $('#cysclxzbox'), // 捕获的元素
                               end: function(){
                                 // layer.msg('关闭后的回调', {icon:6});
                               }
                           });*/
                        break;
                }
                ;
            });
            // 表头自定义元素工具事件 --- 2.8.8+
            table2.on('colTool(diaoduche)', function (obj) {
                var event = obj.event;
                console.log(obj);
                if (event === 'email-tips') {
                    layer.alert(layui.util.escape(JSON.stringify(obj.col)), {
                        title: '当前列属性配置项'
                    });
                }
            });

            // 触发单元格工具事件
            table2.on('tool(diaoduche)', function (obj) { // 双击 toolDouble
                var data = obj.data; // 获得当前行数据
                // console.log(obj)
                if (obj.event === 'edit') {
                    layer.open({
                        title: '编辑 - id:' + data.id,
                        type: 1,
                        area: ['80%', '80%'],
                        content: '<div style="padding: 16px;">自定义表单元素</div>'
                    });
                } else if (obj.event === 'more') {
                    // 更多 - 下拉菜单
                    dropdown.render({
                        elem: this, // 触发事件的 DOM 对象
                        show: true, // 外部事件触发即显示
                        data: [{
                            title: '查看',
                            id: 'detail'
                        }, {
                            title: '删除',
                            id: 'del'
                        }],
                        click: function (menudata) {
                            if (menudata.id === 'detail') {
                                layer.msg('查看操作，当前行 ID:' + data.id);
                            } else if (menudata.id === 'del') {
                                layer.confirm('真的删除行 [id: ' + data.id + '] 么', function (index) {
                                    obj.del(); // 删除对应行（tr）的DOM结构
                                    layer.close(index);
                                    // 向服务端发送删除指令
                                });
                            }
                        },
                        align: 'right', // 右对齐弹出
                        style: 'box-shadow: 1px 1px 10px rgb(0 0 0 / 12%);' // 设置额外样式
                    })
                }
            });

            // 触发表格复选框选择
            /*table2.on('checkbox(diaoduche)', function(obj) {
                console.log(obj)
            });*/

            // 触发表格单选框选择
            table2.on('radio(diaoduche)', function (obj) {
                console.log(obj)
            });

            // 行单击事件
            table2.on('row(diaoduche)', function (obj) {
                //console.log(obj);
                //layer.closeAll('tips');
            });
            // 行双击事件
            table2.on('rowDouble(diaoduche)', function (obj) {
                console.log(obj);
            });

            // 单元格编辑事件
            table2.on('edit(diaoduche)', function (obj) {
                var field = obj.field; // 得到字段
                var value = obj.value; // 得到修改后的值
                var data = obj.data; // 得到所在行所有键值
                // 值的校验
                if (field === 'email') {
                    if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(obj.value)) {
                        layer.tips('输入的邮箱格式不正确，请重新编辑', this, {tips: 1});
                        return obj.reedit(); // 重新编辑 -- v2.8.0 新增
                    }
                }
                // 编辑后续操作，如提交更新请求，以完成真实的数据更新
                // …
                layer.msg('编辑成功', {icon: 1});

                // 其他更新操作
                var update = {};
                update[field] = value;
                obj.update(update);
            });


            //承运单-------------------------------------------------------------->
            var cyscltable = layui.table;
            var dropdown = layui.dropdown;
            var cyscltable_newdata = false;
            //承运商数组
            var cys_arr = [];
            var dropdown_feild = [
                // { type: 'checkbox', fixed: 'left' },
                {field: 'idx', width: 50, title: 'ID', sort: false},

                {field: 'groupid', title: '分组id', width: 120, sort: false},

                {field: 'orderstate', title: '状态', width: 120, sort: false},

                {field: 'cCAYING_NO', title: '承运单号', width: 120, sort: false},
                {field: 'cCAYING_DATE', title: '承运日期', width: 120, sort: false, templet: '#TPL-laydate-demo'},
                {field: 'cFIN_MON', title: '帐款年月', width: 120, templet: '#TPL-text-only'},
                {field: 'cSUPLKIND_NM', title: '承运商分类', width: 150, sort: false, templet: '#TPL-select-primary'},
                {field: 'cSUPLKIND_NO', title: '承运商分类编码', width: 180, sort: false, templet: '#TPL-text-only'},
                {field: 'cSUPPLIER_SNM', title: '承运商/个体', width: 120, sort: false, templet: '#TPL-select-primary'},
                {field: 'cSUPPLIER_NO', title: '承运商编码', width: 180, sort: false, templet: '#TPL-text-only'},
                {field: 'cSUPLINK_MAN', title: '联系人', width: 120, sort: false, templet: '#TPL-text-only'},
                {field: 'cSUPMOBIL_TEL', title: '承运手机', width: 120, sort: false, templet: '#TPL-text-only'},
                {field: 'cSUPLTEL_NO', title: '承运电话', width: 120, sort: false, templet: '#TPL-text-only'},

                {fixed: 'right', title: '操作', width: 60, toolbar: '#befor_save_del_Demo'}

            ];

            // 创建渲染实例
            cyscltable.render({
                elem: '#cyscltable',
                url: '/index.php?s=/store/wlyunshu.api/getchengyunorder', // 此处为静态模拟数据，实际使用时需换成真实接口
                toolbar: '#toolbarDemo2',
                defaultToolbar: ['filter', 'exports', 'print', {
                    title: '添加承运资料',
                    layEvent: 'addcar',
                    icon: 'layui-icon-addition'
                }],
                height: '260', // full-35最大高度减去其他容器已占有的高度差
                css: [
                    // 对开启了编辑的单元格追加样式
                    '.layui-table-view td[data-edit]{color: #16B777;}'
                ].join(''),

                cellMinWidth: 80,
                // where:{status :'待调度'},
                page: false,
                even: true,
                parseData: function (res) { // res 即为原始返回的数据

                    if (res.data.list) {
                        if (cyscltable_newdata) { //添加数据
                            let newRow = {};
                            dropdown_feild.forEach(function (item, index) {
                                if (item.hasOwnProperty('field')) {
                                    newRow[item.field] = '';
                                }
                            });
                            res.data.list.data.push(newRow);
                            cyscltable_newdata = false;
                        }

                        return {
                            "code": res.code, // 解析接口状态
                            "msg": res.msg, // 解析提示文本
                            "count": res.data.list.total, // 解析数据长度
                            "data": res.data.list.data // 解析数据列表
                        };
                    } else {
                        if (cyscltable_newdata) { //添加数据
                            let newRow = {};
                            dropdown_feild.forEach(function (item, index) {
                                if (item.hasOwnProperty('field')) {
                                    newRow[item.field] = '';
                                }
                            });
                            cyscltable_newdata = false;
                            return {
                                "code": res.code, // 解析接口状态
                                "msg": res.msg, // 解析提示文本
                                "count": 1, // 解析数据长度
                                "data": [newRow] // 解析数据列表
                            };
                        } else {
                            return {
                                "code": res.code, // 解析接口状态
                                "msg": '暂无无数据', // 解析提示文本
                                "count": 0, // 解析数据长度
                                "data": [] // 解析数据列表
                            };
                        }
                    }

                },
                cols: [
                    dropdown_feild
                ],
                done: function (res, curr, count, origin) {
                    var id = this.id;

                    var options = this;
                    table.getRowData = function (tableId, elem) {
                        var index = $(elem).closest('tr').data('index');
                        return table.cache[tableId][index] || {};
                    };

                    //设置分组单元格样式
                    // res.data.forEach(function(item,index){
                    //     if (item.调车状态 != '待调度') {
                    //         $(".cyscltable .layui-table tr[data-index="+index+"] input[type='checkbox']").attr('disabled', 'disabled');;
                    //         $(".cyscltable .layui-table tr[data-index="+index+"] .layui-form-checkbox").addClass("layui-checkbox-disabled layui-disabled");
                    //     }
                    // })

                    // 数据新增及修改字段------------------------------------------->
                    //日期
                    laydate.render({
                        elem: '.laydate-demo',
                        done: function (value, date, endDate) {
                            var data = cyscltable.getRowData(options.id, this.elem); // 获取当前行数据(如 id 等字段，以作为数据修改的索引)
                            // 更新数据中对应的字段
                            data[$(this.elem).data('field')] = value;

                            $feild = $(this.elem).data('field');

                            if ($feild == "cCAYING_DATE") {
                                //自动添加账款年月
                                data['cFIN_MON'] = value.slice(0, 7);
                                $('input[data-field="cFIN_MON"]').val(value.slice(0, 7));
                            }

                            // 显示 - 仅用于演示
                            //layer.msg('选中值: '+ value +'<br>当前行数据：'+ JSON.stringify(data));
                        }
                    });

                    $('.text-demo').on('input', function (e) {
                        console.log(e);
                        var data = table.getRowData(options.id, this); // 获取当前行数据(如 id 等字段，以作为数据修改的索引)
                        // 更新数据中对应的字段
                        data[$(this).data('field')] = $(this).val();
                    })

                    // 原生 select 事件
                    var tableViewElem = this.elem.next();
                    //select 被点击时间
                    $('.select-primary').on('click', function (e) {
                        var data = table.getRowData(options.id, this); // 获取当前行数据(如 id 等字段，以作为数据修改的索引)
                        $feild = $(this).data('field');

                        //承运商分类
                        if ($feild == 'cSUPLKIND_NM') {
                            if ($(this).children().length < 2) {
                                <?php foreach ($cys as $cyinfo): ?>
                                $(this).append('<option value="<?= $cyinfo['cSUPLKIND_NO'] ?>"><?= $cyinfo['cSUPLKIND_NM'] ?></option>');
                                <?php endforeach;?>
                            }
                        }
                    })
                    //select选中事件
                    tableViewElem.find('.select-primary').on('change', function () {
                        var value = this.value; // 获取选中项 value
                        var data = table.getRowData(options.id, this); // 获取当前行数据(如 id 等字段，以作为数据修改的索引)

                        $feild = $(this).data('field');

                        //承运商分类
                        if ($feild == 'cSUPLKIND_NM') {
                            data['cSUPLKIND_NM'] = $(this).find("option:selected").text();
                            data['cSUPLKIND_NO'] = value;

                            $('input[data-field="cSUPLKIND_NO"]').val(value);

                            //添加承运商
                            $.get("/index.php?s=/store/wlyunshu.api/getchengyunshang", {
                                cSUPLKIND_NO: value,
                            }, function (resalt) {
                                if (resalt.code == 0) {
                                    cys_arr = resalt.data.list.data;
                                    resalt.data.list.data.forEach(function (item) {
                                        $('select[data-field="cSUPPLIER_SNM"]').append('<option value="' + item.cSUPPLIER_NO + '">' + item.cSUPPLIER_NM + '</option>');
                                    })
                                } else {
                                    layer.msg('暂无相关承运商', {icon: 2});
                                }
                            });

                            return true;
                        } else if ($feild == 'cSUPPLIER_SNM') { //承运商选中
                            data['cSUPPLIER_SNM'] = $(this).find("option:selected").text();

                            data['cSUPPLIER_NO'] = value;
                            $('input[data-field="cSUPPLIER_NO"]').val(value);

                            //补全承运商其他数据
                            cys_arr.forEach(function (item) {
                                if (item.cSUPPLIER_NO == value) {
                                    //联系人
                                    data['cSUPLINK_MAN'] = item.cLINKMAN;
                                    $('input[data-field="cSUPLINK_MAN"]').val(item.cLINKMAN);
                                    //承运手机
                                    data['cSUPMOBIL_TEL'] = item.cMOBIL_TEL;
                                    $('input[data-field="cSUPMOBIL_TEL"]').val(item.cMOBIL_TEL);
                                    //承运电话
                                    data['cSUPLTEL_NO'] = item.cCAYCHG_CTL;
                                    $('input[data-field="cSUPLTEL_NO"]').val(item.cCAYCHG_CTL);
                                }
                            })

                            return true;
                        }

                        // 更新数据中对应的字段
                        data[$(this).data('field')] = value;

                    });


                    // 数据新增及修改字段------------------------------------------------------------------------>


                    // 行模式
                    dropdown.render({
                        elem: '#rowMode',
                        data: [{
                            id: 'default-row',
                            title: '单行模式（默认）'
                        }, {
                            id: 'multi-row',
                            title: '多行模式'
                        }],
                        // 菜单被点击的事件
                        click: function (obj) {
                            var checkStatus = table.checkStatus(id)
                            var data = checkStatus.data; // 获取选中的数据
                            switch (obj.id) {
                                case 'default-row':
                                    table.reload('cyscltable', {
                                        lineStyle: null // 恢复单行
                                    });
                                    layer.msg('已设为单行');
                                    break;
                                case 'multi-row':
                                    table.reload('cyscltable', {
                                        // 设置行样式，此处以设置多行高度为例。若为单行，则没必要设置改参数 - 注：v2.7.0 新增
                                        lineStyle: 'height: 95px;'
                                    });
                                    layer.msg('即通过设置 lineStyle 参数可开启多行');
                                    break;
                            }
                        }
                    });
                },
                error: function (res, msg) {
                    console.log(res, msg)
                }
            });

            // 右侧工具栏事件
            cyscltable.on('toolbar(cyscltable)', function (obj) {
                var id = obj.config.id;
                var checkStatus = table.checkStatus(id);
                var othis = lay(this);
                switch (obj.event) {
                    case 'getCheckData':
                        var data = checkStatus.data;
                        layer.alert(layui.util.escape(JSON.stringify(data)));
                        break;
                    case 'getData':
                        var getData = table.getData(id);
                        console.log(getData);
                        layer.alert(layui.util.escape(JSON.stringify(getData)));
                        break;
                    case 'addcar':
                        cyscltable_newdata = true;
                        cyscltable.reloadData('cyscltable');

                        break;
                }
                ;
            });
            // 表头自定义元素工具事件 --- 2.8.8+
            cyscltable.on('colTool(cyscltable)', function (obj) {
                var event = obj.event;
                console.log(obj);
                if (event === 'email-tips') {
                    layer.alert(layui.util.escape(JSON.stringify(obj.col)), {
                        title: '当前列属性配置项'
                    });
                }
            });


            // 触发单元格工具事件
            cyscltable.on('tool(cyscltable)', function (obj) { // 双击 toolDouble
                var data = obj.data; // 获得当前行数据
                // console.log(obj)
                if (obj.event === 'newdel') {
                    cyscltable.reloadData('cyscltable');
                } else if (obj.event === 'save') {

                    delete data['id'];
                    data['orderstate'] = '已调度';

                    $.get("/index.php?s=/store/wlyunshu.api/addchengyunorder", {
                        obj: data,
                    }, function (resalt) {
                        if (resalt.code == 0) {
                            table.reloadData('orderlist');
                            cyscltable.reloadData('cyscltable');
                            layer.msg('关联1完成', {icon: 1});
                            search_che({status: '待调度'});
                        } else {
                            layer.msg('关联1失败', {icon: 2});
                        }
                    });
                }


            });


            //价格明细表--------------------------------------------------------------->
            var table_price = layui.table;
            var table_price_data = [
                {field: 'idx', fixed: 'left', width: 50, title: 'ID', sort: true},
                {field: 'groupid', title: '分组id', width: 120, sort: false},
                {field: 'cPAYITEM_NM', title: '费用项目', width: 100, templet: '#TPL-text-value'},
                {field: 'cCAY_AMT', title: '实际金额', width: 100, templet: '#TPL-text-value'},
                {field: 'nPLAN_AMT', title: '协议金额', width: 160, templet: '#TPL-text-value'},
                {field: 'nOVER_AMT', title: '超支金额', width: 160, templet: '#TPL-text-value'},
                {field: 'cUNIT_NM', title: '单位', width: 160, templet: '#TPL-text-value'},
                {field: 'cPRC_BY', title: '计算依据', width: 80, templet: '#TPL-text-value'},
                {field: 'nUNIT_PRICE', title: '单价', width: 100, templet: '#TPL-text-value'},
                {field: 'nCAY_QTY', title: '数量', width: 150, templet: '#TPL-text-value'},

            ];
            // 创建渲染实例
            table_price.render({
                elem: '#price',
                toolbar: '#toolbarDemo2',
                url: '/index.php?s=/store/wlyunshu.api/getchengyunorderprice', // 此处为静态模拟数据，实际使用时需换成真实接口
                parseData: function (res) { // res 即为原始返回的数据

                    if (res.data.list) {

                        return {
                            "code": res.code, // 解析接口状态
                            "msg": res.msg, // 解析提示文本
                            "count": res.data.list.total, // 解析数据长度
                            "data": res.data.list.data // 解析数据列表
                        };
                    } else {

                        return {
                            "code": res.code, // 解析接口状态
                            "msg": '暂无无数据', // 解析提示文本
                            "count": 0, // 解析数据长度
                            "data": [] // 解析数据列表
                        };

                    }

                },
                defaultToolbar: [{
                    title: '选择费用资料',
                    layEvent: 'addprice',
                    icon: 'layui-icon-addition'
                }],
                height: '260', // full-35最大高度减去其他容器已占有的高度差
                css: [ // 重设当前表格样式
                    '.layui-table-tool-temp{padding-right: 145px;}'
                ].join(''),
                data: [],
                cellMinWidth: 80,
                even: true,
                cols: [
                    table_price_data
                ],
                done: function (res, curr, count, origin) {
                    var id = this.id;

                    var options = this;
                    table.getRowData = function (tableId, elem) {
                        var index = $(elem).closest('tr').data('index');
                        return table.cache[tableId][index] || {};
                    };

                    $('.text-demo').on('input', function (e) {
                        console.log(e);
                        var data = table.getRowData(options.id, this); // 获取当前行数据(如 id 等字段，以作为数据修改的索引)
                        // 更新数据中对应的字段
                        data[$(this).data('field')] = $(this).val();
                    })
                },
            });
            // 右侧工具栏事件
            table_price.on('toolbar(price)', function (obj) {
                var id = obj.config.id;
                var checkStatus = table.checkStatus(id);
                var othis = lay(this);
                switch (obj.event) {
                    case 'addprice':

                        layer.open({
                            title: '选择费用类型',
                            type: 1,
                            shade: false, // 不显示遮罩
                            area: ['40%', '40%'],
                            content: $('#Price_type_select'), // 捕获的元素
                            btn: ['确认选中', '取消'],
                            btnAlign: 'c',
                            yes: function (index, layero) {
                                // 获取 iframe 的窗口对象

                                var text = $('#Feiyong_type').find("option:selected").text();
                                if (text == '请选择') {
                                    layer.msg('请选择类型', {icon: 1});
                                    return false;
                                }

                                var olddata = table_price.cache[id];
                                var newRow = {
                                    'idx': '',
                                    'cPAYITEM_NM': text,
                                    'cCAY_AMT': '0',
                                    'nPLAN_AMT': '0',
                                    'nOVER_AMT': '0',
                                    'cUNIT_NM': '吨',
                                    'cPRC_BY': '重量',
                                    'nUNIT_PRICE': '0',
                                    'nCAY_QTY': '0',
                                };

                                olddata.push(newRow);

                                console.log(olddata, 'olddata');
                                // 根据 table.cache 重新渲染数据

                                table_price.renderData(id);

                                layer.close(index);


                                // 显示获得的值
                                // layer.msg('获得 iframe 中的输入框标记值：'+ value);
                            }
                        });


                        break;
                }
                ;
            });

            //关联订单和承运单及费用
            $('.guanliancyd').on('click', function () {

                // 获取选中的订单数据
                var orderlistcheckStatus = table.checkStatus('orderlist');
                var orderlistdata = orderlistcheckStatus.data;

                var chelaingcheckStatus = table2.checkStatus('diaoduche');
                var cheliangdata = chelaingcheckStatus.data;

                if (orderlistdata.length == 0) {
                    layer.alert("没有选中订单!", {
                        title: '提示'
                    });
                    return false;
                }
                if (orderlistdata[0].orderstate != '待调度') {
                    layer.alert("订单不合法!", {
                        title: '提示'
                    });
                    return false;
                }

                //订单id组
                var order_idxs = [];
                orderlistdata.forEach(function (item) {
                    order_idxs.push(item.idx);
                });
                var idxs = order_idxs.join(',');

                //group_id
                var groupid = 0;
                if (orderlistdata[0].groupid === null) {
                    groupid = orderlistdata[0].idx;
                } else {
                    groupid = orderlistdata[0].groupid;
                }

                //承运单数据
                var cydarr = cyscltable.cache['cyscltable'];
                if (cydarr.length == 0) {
                    layer.msg('请选择类型', {icon: 1});
                    return false;
                }

                //费用数据
                var pricearr = table_price.cache['price'];
                if (pricearr.length == 0) {
                    layer.msg('请添加费用', {icon: 1});
                    return false;
                }

                $.get("/index.php?s=/store/wlyunshu.api/order_bind_cyd", {
                    idxs: idxs,
                    cydarr: cydarr,
                    pricearr: pricearr,
                    groupid: groupid,
                }, function (resalt) {
                    if (resalt.code == 0) {
                        table.reloadData('orderlist');
                        table2.reloadData('price');
                        table2.reloadData('cyscltable');
                        layer.msg('关联承运单完成', {icon: 1});
                    } else {
                        layer.msg('关联承运单失败', {icon: 2});
                    }
                });

                return false;


                //车辆组
                var che_ids = [];
                cheliangdata.forEach(function (item) {
                    che_ids.push(item.applyId);
                });
                var cheids = che_ids.join(',');

                // console.log({
                //     idxs:idxs,
                //     cheids:cheids,
                //     groupid:groupid,
                // });
                // return false;

                $.get("/index.php?s=/store/wlyunshu.api/order_bind_cyd", {
                    idxs: idxs,
                    cheids: cheids,
                    groupid: groupid,
                }, function (resalt) {
                    if (resalt.code == 0) {
                        table.reloadData('orderlist');
                        table2.reloadData('diaoduche');
                        layer.msg('关联完成', {icon: 1});
                        search_che({status: '待调度'});
                    } else {
                        layer.msg('关联失败', {icon: 2});
                    }
                });
            })


        });
    </script>
    </script>
    <script src="/Public/Index/js/index.js"></script>
</body>

</html>
